package io.gitee.chearnee.fw.datasecurity.core.properties;


import io.gitee.chearnee.fw.common.utils.ConstStringPool;
import io.gitee.chearnee.fw.datasecurity.core.enums.AesEnum;
import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.context.properties.ConfigurationProperties;

/**
 * 数据库加密配置属性映射
 *
 * @author kamjin1996
 */
@Getter
@Setter
@ConfigurationProperties(prefix = "fw.data-security.crypt")
public class DataSecurityDbCryptProperty {
    /**
     * 是否启用加密插件
     */
    private boolean enabled = false;
    /**
     * aes标准
     */
    private AesEnum aes = AesEnum.AES256;
    /**
     * 加密所需要的密钥，自定义时需要符合aes的标准，比如192标准密钥必须24位.
     */
    private String secretKey = "123456789012345678901234";
    /**
     * pojo中统一的主键ID字段名称.
     */
    private String primaryKeyName = "id";
    /**
     * 密文前缀
     */
    private String encryptPrefix = "fw" + ConstStringPool.SPLIT_COLON + "crypt" + ConstStringPool.SPLIT_COLON;

}
